<ui:composition xmlns="http://www.w3.org/1999/xhtml"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:p="http://primefaces.org/ui" template="/paginas/template.xhtml">

	<ui:define name="corpoForm">
		
		<p:confirmDialog message="#{msg.questionConfirmaRemover}"
			appendTo="@(body)" width="250" id="dlgRemoverUsuario"
			header="#{rsc.label_confirmar}" severity="alert"
			widgetVar="confirmacao">
			<h:form id="confirmarForm">
				<p:commandButton value="#{rsc.label_sim}" process="@this"
					styleClass="botao"
					actionListener="#{manterFilialBean.removerUsuario}"
					update=":formNovoFilial:listUsuarios"
					oncomplete="confirmacao.hide();" />
				<p:commandButton value="#{rsc.label_nao}" styleClass="botao"
					onclick="confirmacao.hide()" type="button" />
			</h:form>
		</p:confirmDialog>

		<p:dialog id="buscarResponsavelDialog" appendTo="@(body)" width="900"
			height="400" header="#{rsc.label_selecioneResponsavel}"
			closeOnEscape="true" widgetVar="dlgResponsavel">

			<h:form id="formAdicionarResponsavel" prependId="false">

				<p:watermark value="#{rsc.wm_nomeConsulta}" for="acFilial" />
				<p:watermark value="#{rsc.wm_cpfConsulta}" for="txtCPF" />
				<p:watermark value="#{rsc.wm_emailConsulta}" for="txtEmail" />

				<p:panelGrid columns="1" styleClass="full-width">
					<p:commandButton id="btnAdicionarResponsavel" process="@this"
						styleClass="botao" value="#{rsc.label_adicionarResponsavel}"
						actionListener="#{manterFilialBean.adicionarResponsavel}"
						oncomplete="dlgResponsavel.hide();"
						update=":formNovoFilial:acResponsavel, :formAdicionarResponsavel:listaSelecioneResponsavel"
						title="#{rsc.label_adicionarResponsavel}" />

				</p:panelGrid>

				<p:panelGrid columns="4">

					<p:outputLabel value="#{rsc.label_pessoa}" for="acFilial" />

					<p:outputLabel value="#{rsc.label_cpf}" for="txtCPF" />

					<p:outputLabel value="#{rsc.label_email} " for="txtEmail" />

					<p:spacer />

					<p:autoComplete id="acFilial" minQueryLength="3"
						value="#{manterFilialBean.filtro.nome}" effect="fade"
						maxResults="7"
						completeMethod="#{manterFilialBean.autoCompleteNomeUsuario}">
						<p:ajax event="change"
							listener="#{manterFilialBean.buscarResponsavelPorFiltros}" />
					</p:autoComplete>

					<p:inputText label="#{rsc.label_cpf}" id="txtCPF"
						title="#{rsc.label_cpf}" styleClass="cpf"
						value="#{manterFilialBean.filtro.cpf}" />


					<p:inputText label="#{rsc.label_email}" id="txtEmail"
						title="#{rsc.label_email}" styleClass="email"
						value="#{manterFilialBean.filtro.email}" />


					<p:commandButton
						actionListener="#{manterFilialBean.buscarResponsavelPorFiltros}"
						icon="ui-icon ui-icon-search" title="#{rsc.label_buscar}"
						update="formAdicionarResponsavel:listaSelecioneResponsavel" />

				</p:panelGrid>


				<p:panelGrid columns="1" styleClass="full-width">
					<p:dataTable emptyMessage="#{msg.nenhumRegistroEncontrado}"
						var="responsavel" id="listaSelecioneResponsavel"
						value="#{manterFilialBean.formulario.responsavelSelecionar}"
						selection="#{manterFilialBean.entidade.responsavel}"
						rowKey="#{responsavel.id}" paginator="true" rows="10"
						paginatorPosition="#{rsc.label_paginationPosition}"
						paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
						rowsPerPageTemplate="10,50,150,200">

						<p:ajax event="rowSelectRadio" />
						<p:ajax event="rowSelect" />
						<p:column selectionMode="single" style="width:20px" />

						<p:column headerText="#{rsc.label_usuario}">
							<p:outputLabel value="#{responsavel.nome}" />
						</p:column>

						<p:column headerText="#{rsc.label_cpf}">
							<p:outputLabel value="#{responsavel.cpf}" />
						</p:column>

						<p:column headerText="#{rsc.label_email}">
							<p:outputLabel value="#{responsavel.email}" />
						</p:column>

					</p:dataTable>
				</p:panelGrid>
			</h:form>
		</p:dialog>


		<p:dialog id="buscarUsuariosDialog" appendTo="@(body)" width="900"
			height="400" header="#{rsc.label_selecioneUsuarios}"
			closeOnEscape="true" widgetVar="dlgUsuarios">

			<h:form id="formAdicionarUsuarios" prependId="false">
				<p:watermark value="#{rsc.wm_nomeConsulta}" for="acFilialUsuarios" />
				<p:watermark value="#{rsc.wm_cpfConsulta}" for="txtCPFUsuarios" />
				<p:watermark value="#{rsc.wm_emailConsulta}" for="txtEmailUsuarios" />
				<p:panelGrid columns="1" styleClass="full-width">

					<p:commandButton id="btnAdicionarUsuarios" process="@this"
						styleClass="botao" value="#{rsc.label_adicionarUsuarios}"
						oncomplete="dlgUsuarios.hide();"
						actionListener="#{manterFilialBean.adicionarUsuarios}"
						update="listaSelecioneUsuarios, :formNovoFilial:listUsuarios"
						title="#{rsc.label_adicionarUsuarios}" />

				</p:panelGrid>

				<p:panelGrid columns="4">

					<p:outputLabel value="#{rsc.label_pessoa}" for="acFilialUsuarios" />

					<p:outputLabel value="#{rsc.label_cpf}" for="txtCPFUsuarios" />

					<p:outputLabel value="#{rsc.label_email} " for="txtEmailUsuarios" />

					<p:spacer />

					<p:autoComplete id="acFilialUsuarios" minQueryLength="3"
						value="#{manterFilialBean.filtro.nome}" effect="fade"
						maxResults="7"
						completeMethod="#{manterFilialBean.autoCompleteNomeUsuario}">
						<p:ajax event="change"
							listener="#{manterFilialBean.buscarUsuariosPorFiltros}" />
					</p:autoComplete>

					<p:inputText label="#{rsc.label_cpf}" id="txtCPFUsuarios"
						title="#{rsc.label_cpf}" styleClass="cpf"
						value="#{manterFilialBean.filtro.cpf}" />


					<p:inputText label="#{rsc.label_email}" id="txtEmailUsuarios"
						title="#{rsc.label_email}" styleClass="email"
						value="#{manterFilialBean.filtro.email}" />

					<p:commandButton
						actionListener="#{manterFilialBean.buscarUsuariosPorFiltros}"
						icon="ui-icon ui-icon-search" title="#{rsc.label_buscar}"
						update="formAdicionarUsuarios:listaSelecioneUsuarios" />

				</p:panelGrid>


				<p:panelGrid columns="1" styleClass="full-width">
					<p:dataTable emptyMessage="#{msg.nenhumRegistroEncontrado}"
						var="responsavel" id="listaSelecioneUsuarios"
						value="#{manterFilialBean.formulario.usuariosSelecionar}"
						selection="#{manterFilialBean.formulario.usuariosSelecionados}"
						paginator="true" rows="10"
						paginatorPosition="#{rsc.label_paginationPosition}"
						paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
						rowsPerPageTemplate="10,50,150,200">

						<p:ajax event="rowSelectCheckbox" />

						<p:column selectionMode="multiple" style="width:20px" />


						<p:column headerText="#{rsc.label_usuario}">
							<p:outputLabel value="#{responsavel.nome}" />
						</p:column>

						<p:column headerText="#{rsc.label_cpf}">
							<p:outputLabel value="#{responsavel.cpf}" />
						</p:column>

						<p:column headerText="#{rsc.label_email}">
							<p:outputLabel value="#{responsavel.email}" />
						</p:column>

					</p:dataTable>
				</p:panelGrid>
			</h:form>
		</p:dialog>



		<f:event type="javax.faces.event.PreRenderComponentEvent"
			listener="#{manterFilialBean.preRenderEdit}" />
		<h:form id="formNovoFilial" prependId="false">

			<p:panelGrid columns="2" styleClass="botoes" id="botoes">
				<p:commandButton value="#{rsc.label_salvar}" styleClass="botao"
					action="#{manterFilialBean.alterar}" ajax="false"
					onclick="setTimeout('document.getElementById(\'' + this.id + '\').disabled=true;', 50);"
					rendered="#{p:ifGranted('ALTERAR_FILIAL')}"
					title="#{rsc.title_salvar}" />

				<p:commandButton value="#{rsc.label_cancelar}" styleClass="botao"
					update="growl" action="#{manterFilialBean.cancelar}" ajax="false"
					onclick="setTimeout('document.getElementById(\'' + this.id + '\').disabled=true;', 50);"
					title="#{rsc.title_cancelar}" immediate="true">
				</p:commandButton>
			</p:panelGrid>

			<p:panel id="pnlAlterarFilial" header="#{rsc.label_filial}"
				toggleable="true" toggleSpeed="500">

				<p:panelGrid columns="3">
					<p:outputLabel value="#{rsc.label_nome}" for="txtNomeFilial"
						styleClass="obrigatorio" />

					<p:inputText label="#{rsc.label_quantidade}" id="txtNomeFilial"
						maxlength="60" size="40" title="#{rsc.label_nome}"
						value="#{manterFilialBean.entidade.nome}" />

					<p:spacer />

					<p:outputLabel value="#{rsc.label_responsavel}" for="acResponsavel"
						styleClass="obrigatorio" />

					<p:autoComplete id="acResponsavel" minQueryLength="3"
						required="true" requiredMessage="#{msg.usuarioObrigatorio}"
						value="#{manterFilialBean.entidade.responsavel.nome}" size="40"
						effect="fade" maxResults="7" disabled="true"
						completeMethod="#{manterFilialBean.autoCompleteNomeResponsavel}" />

					<p:commandButton onstart="dlgResponsavel.show();"
						icon="ui-icon ui-icon-circle-plus" process="@this"
						title="#{rsc.label_buscarResponsavel}">
					</p:commandButton>



					<p:outputLabel value="#{rsc.label_ativo}" for="chkAtivo" />

					<p:selectBooleanCheckbox label="#{rsc.label_ativo}" id="chkAtivo"
						title="#{rsc.label_ativo}"
						value="#{manterFilialBean.entidade.ativo}" />

				</p:panelGrid>
			</p:panel>

			<p:panel id="pnlContatoFilial" header="#{rsc.label_endereco}"
				toggleable="true" toggleSpeed="500">

				<p:panelGrid columns="4">
					<p:outputLabel value="#{rsc.label_cep}" for="txtCep" />

					<p:outputLabel value="#{rsc.label_endereco}" for="txtEndereco" />

					<p:outputLabel value="#{rsc.label_numero}" for="txtNumero" />

					<p:outputLabel value="#{rsc.label_complemento}"
						for="txtComplemento" />

					<p:inputText label="#{rsc.label_cep}" id="txtCep"
						title="#{rsc.label_cep}" styleClass="cep"
						value="#{manterFilialBean.entidade.endereco.cep}">
						<p:ajax event="blur" listener="#{manterFilialBean.consultarCep}"
							update="txtEndereco, txtBairro, cmbCidade, cmbEstado" />
					</p:inputText>


					<p:inputText label="#{rsc.label_endereco}" id="txtEndereco"
						title="#{rsc.label_endereco}"
						value="#{manterFilialBean.entidade.endereco.endereco}">
					</p:inputText>

					<p:inputText label="#{rsc.label_numero}" id="txtNumero"
						title="#{rsc.label_numero}"
						value="#{manterFilialBean.entidade.endereco.numero}">
					</p:inputText>

					<p:inputText label="#{rsc.label_complemento}" id="txtComplemento"
						title="#{rsc.label_complemento}"
						value="#{manterFilialBean.entidade.endereco.complemento}">
					</p:inputText>


					<p:outputLabel value="#{rsc.label_bairro}" for="txtBairro" />

					<p:outputLabel value="#{rsc.label_estado}" for="cmbEstado" />

					<p:outputLabel value="#{rsc.label_cidade}" for="cmbCidade" />

					<p:spacer />

					<p:inputText label="#{rsc.label_bairro}" id="txtBairro"
						title="#{rsc.label_bairro}"
						value="#{manterFilialBean.entidade.endereco.bairro}" />

					<p:selectOneMenu label="#{rsc.label_estado}" style="width: 99%;"
						value="#{manterFilialBean.entidade.endereco.cidade.estado.id}"
						id="cmbEstado">
						<p:ajax event="change"
							listener="#{manterFilialBean.carregarCidades}" update="cmbCidade" />
						<f:selectItem itemLabel="#{rsc.label_selecionar}" itemValue="" />
						<f:selectItems value="#{manterFilialBean.formulario.estados}"
							var="c" itemLabel="#{c.nome}" itemValue="#{c.id}" />
					</p:selectOneMenu>

					<p:selectOneMenu label="#{rsc.label_cidade}" style="width: 99%;"
						value="#{manterFilialBean.entidade.endereco.cidade.id}"
						id="cmbCidade">
						<f:selectItem itemLabel="#{rsc.label_selecionar}" itemValue="" />
						<f:selectItems value="#{manterFilialBean.formulario.cidades}"
							var="c" itemLabel="#{c.nome}" itemValue="#{c.id}" />
					</p:selectOneMenu>

					<p:spacer />

				</p:panelGrid>

			</p:panel>

			<p:panel id="pnlUsuariosFilial" header="#{rsc.label_usuariosFilial}"
				toggleable="true" toggleSpeed="500">

				<p:commandButton id="btnBuscarUsuarios" process="@this"
					styleClass="botao" value="#{rsc.label_adicionarUsuarios}"
					oncomplete="dlgUsuarios.show();"
					title="#{rsc.label_adicionarUsuarios}" />

				<p:panelGrid columns="1" styleClass="full-width">

					<p:dataTable emptyMessage="#{msg.nenhumRegistroEncontrado}"
						var="usuario" id="listUsuarios"
						value="#{manterFilialBean.entidade.usuarios}" paginator="true"
						rows="10" paginatorPosition="#{rsc.label_paginationPosition}"
						paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
						rowsPerPageTemplate="10,50,150,200">
						<p:column headerText="#{rsc.label_nomeUsuario}">
							<p:outputLabel value="#{usuario.nome}" />
						</p:column>

						<p:column headerText="#{rsc.label_perfil}">
							<p:outputLabel value="#{usuario.perfil.nome}" />
						</p:column>

						<p:column headerText="#{rsc.label_email}">
							<p:outputLabel value="#{usuario.email}" />
						</p:column>

						<p:column headerText="#{rsc.label_celular}">
							<p:outputLabel value="#{usuario.celular}" />
						</p:column>

						<p:column styleClass="coluna-acoes"
							headerText="#{rsc.label_acoes}">

							<p:commandButton icon="ui-icon ui-icon-trash"
								title="#{rsc.label_remover}" process="@this"
								oncomplete="confirmacao.show();">
								<f:setPropertyActionListener value="#{usuario}"
									target="#{manterFilialBean.formulario.usuarioRemover}" />
							</p:commandButton>

						</p:column>
					</p:dataTable>

				</p:panelGrid>

			</p:panel>

			<p:watermark value="#{rsc.wm_nomeFilial}" for="txtNomeFilial" />
			<p:watermark value="#{rsc.wm_nomeResponsavelFilial}"
				for="acResponsavel" />
			<p:watermark value="#{rsc.wm_cep}" for="txtCep" />
			<p:watermark value="#{rsc.wm_endereco}" for="txtEndereco" />
			<p:watermark value="#{rsc.wm_numero}" for="txtNumero" />
			<p:watermark value="#{rsc.wm_complemento}" for="txtComplemento" />
			<p:watermark value="#{rsc.wm_bairro}" for="txtBairro" />


		</h:form>
	</ui:define>
</ui:composition>

